gusucode.com > VC++ 汽配销售管理系统(Access)源码程序 > VC++ 汽配销售管理系统(Access)源码程序/源码/DPersonnel.cpp
//Download by http://www.NewXing.com // DPersonnel.cpp : implementation file // #include "stdafx.h" #include "qpglxt.h" #include "DPersonnel.h" #include "DBaseQuery.h" #include "externDllHeader.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CDPersonnel dialog CDPersonnel::CDPersonnel(CWnd* pParent /*=NULL*/) : CDialog(CDPersonnel::IDD, pParent) { //{{AFX_DATA_INIT(CDPersonnel) //}}AFX_DATA_INIT } void CDPersonnel::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CDPersonnel) DDX_Control(pDX, IDC_SPXX_BUTUNDO, m_ButUndo); DDX_Control(pDX, IDC_SPXX_BUTSAVE, m_ButSave); DDX_Control(pDX, IDC_SPXX_BUTEXIT, m_ButExit); DDX_Control(pDX, IDC_SPXX_BUTDELE, m_ButDele); DDX_Control(pDX, IDC_SPXX_BUTCHANGE, m_ButChange); DDX_Control(pDX, IDC_PERSONNEL_EDTID, m_EdtID); DDX_Control(pDX, IDC_SPXX_BUTADD, m_ButAdd); DDX_Control(pDX, DC_PERSONNEL_EDTSTIPEND, m_EdtStipend); DDX_Control(pDX, DC_PERSONNEL_EDTNAME, m_EdtName); DDX_Control(pDX, DC_PERSONNEL_EDTMEM, m_EdtMem); DDX_Control(pDX, DC_PERSONNEL_EDTDUTY, m_EdtDuty); DDX_Control(pDX, DC_PERSONNEL_DTDATE, m_DtDate); DDX_Control(pDX, DC_PERSONNEL_COMSEX, m_ComSex); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(CDPersonnel, CDialog) //{{AFX_MSG_MAP(CDPersonnel) ON_BN_CLICKED(IDC_SPXX_BUTADD, OnSpxxButadd) ON_BN_CLICKED(IDC_SPXX_BUTCHANGE, OnSpxxButchange) ON_BN_CLICKED(IDC_SPXX_BUTDELE, OnSpxxButdele) ON_BN_CLICKED(IDC_SPXX_BUTSAVE, OnSpxxButsave) ON_BN_CLICKED(IDC_SPXX_BUTUNDO, OnSpxxButundo) ON_BN_CLICKED(IDC_SPXX_BUTEXIT, OnSpxxButexit) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CDPersonnel message handlers void CDPersonnel::Clear() { m_EdtID.SetWindowText(""); m_EdtStipend.SetWindowText(""); m_EdtName.SetWindowText(""); m_EdtMem.SetWindowText(""); m_EdtDuty.SetWindowText(""); CTime time; time=time.GetCurrentTime(); m_DtDate.SetTime(&time); m_ComSex.SetCurSel(0); } void CDPersonnel::Display(CString ID) { RxRecordset Drxt; CString sSQL; if(ID.IsEmpty()) return; sSQL.Format("SELECT * FROM 员工信息表 WHERE 编号 =%s",ID); Drxt.Open(sSQL,adCmdText); CString sID,sName,sSex,sDuty,sDate,sStipend,sMem; sID=Drxt.GetFieldValue("编号"); sName=Drxt.GetFieldValue("姓名"); sSex=Drxt.GetFieldValue("性别"); sDuty=Drxt.GetFieldValue("职务"); sDate=Drxt.GetFieldValue("聘用日期"); sStipend=Drxt.GetFieldValue("薪金"); sMem=Drxt.GetFieldValue("备注"); m_EdtID.SetWindowText(sID); m_EdtStipend.SetWindowText(sStipend); m_EdtName.SetWindowText(sName); m_EdtMem.SetWindowText(sMem); m_EdtDuty.SetWindowText(sDuty); CTime time; time=CStringTOCTime(sDate); m_DtDate.SetTime(&time); m_ComSex.SetWindowText(sSex); } void CDPersonnel::Enabled(bool bEnabled) { m_EdtStipend.EnableWindow(bEnabled); m_EdtName.EnableWindow(bEnabled); m_EdtMem.EnableWindow(bEnabled); m_EdtDuty.EnableWindow(bEnabled); m_DtDate.EnableWindow(bEnabled); m_ComSex.EnableWindow(bEnabled); m_ButUndo.EnableWindow(bEnabled); m_ButSave.EnableWindow(bEnabled); m_ButExit.EnableWindow(!bEnabled); m_ButDele.EnableWindow(!bEnabled); m_ButChange.EnableWindow(!bEnabled); m_ButAdd.EnableWindow(!bEnabled); } void CDPersonnel::OnSpxxButadd() { AddOrChange=1; CString sNewID; sNewID=ado.AutoNumber("员工信息表","编号","",1); this->Clear(); m_EdtID.SetWindowText(sNewID); this->Enabled(true); this->m_EdtName.SetFocus(); } void CDPersonnel::OnSpxxButchange() { AddOrChange=2; this->Enabled(true); this->m_EdtName.SetFocus(); } void CDPersonnel::OnSpxxButdele() { if(MessageBox("确定要删除记录吗?"," 系统提示",MB_OKCANCEL|MB_ICONQUESTION)!=1) return; CString cID,sSQL; this->m_EdtID.GetWindowText(cID); sSQL.Format("DELETE FROM 员工信息表 WHERE 编号=%s",cID); rst.Open(sSQL,adCmdText); this->OnCancel(); } void CDPersonnel::OnSpxxButsave() { if(MessageBox("确定要保存记录吗?"," 系统提示",MB_OKCANCEL|MB_ICONQUESTION)!=1) return; CString sSQL,sID,sName,sSex,sDuty,sDate,sStipend,sMem; m_EdtID.GetWindowText(sID); m_EdtStipend.GetWindowText(sStipend); m_EdtName.GetWindowText(sName); m_EdtMem.GetWindowText(sMem); m_EdtDuty.GetWindowText(sDuty); CTime time; m_DtDate.GetTime(time); sDate=CTimeToCString(time); m_ComSex.GetWindowText(sSex); if(this->AddOrChange==1)//添加 sSQL.Format("INSERT INTO 员工信息表 VALUES(%s,'%s','%s','%s',#%s#,%s,'%s')",sID,sName,sSex,sDuty,sDate,sStipend,sMem); else//修改 sSQL.Format("UPDATE 员工信息表 SET 姓名='%s',性别='%s',职务='%s',聘用日期=#%s#,薪金=%s,备注='%s' WHERE 编号=%s",sName,sSex,sDuty,sDate,sStipend,sMem,sID); rst.Open(sSQL,adCmdText); this->Enabled(false); this->AddOrChange=0; } void CDPersonnel::OnSpxxButundo() { if(MessageBox("确定要撤消操作吗?"," 系统提示",MB_OKCANCEL|MB_ICONQUESTION)!=1) return; this->Enabled(false); this->Clear(); this->Display(m_sID); } void CDPersonnel::OnSpxxButexit() { this->OnCancel(); } BOOL CDPersonnel::OnInitDialog() { CDialog::OnInitDialog(); CDBaseQuery* Parent =(CDBaseQuery*)this->FindWindow(NULL,"员工信息查询"); CString sSQL,sID; sID=Parent->m_Grid.GetItemText(Parent->m_CurrentRow,0); m_sID=sID; this->Display(sID); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE }